package lab02.test24;

import java.text.DateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;
import java.text.SimpleDateFormat;

/**
 * 编程实现：计算两个日期的天数之差。编写Java应用程序，来计算任意两个日期的天数之差。要求：两个日期用字符串形式输入
 * （比如输入“20100101”表示2010年1月1日），需要将日期字符串的年、月、日分别转换为数字形式。
 */
public class Test {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            System.out.println(" 请输入第一个日期，格式如:20170412:");
            String num = scanner.nextLine();
            String year = num.substring(0, 4);
            String month = num.substring(4, 6);
            String day = num.substring(6);
            Calendar calendar = Calendar.getInstance();
            calendar.set(Integer.parseInt(year), Integer.parseInt(month), Integer.parseInt(day));
           Date date1 = calendar.getTime();
            System.out.println(" 请输入第二个日期，格式如:20170412:");
            num = scanner.nextLine();
            year = num.substring(0, 4);
            month = num.substring(4, 6);
            day = num.substring(6);
            calendar.set(Integer.parseInt(year), Integer.parseInt(month), Integer.parseInt(day));
            Date date2=calendar.getTime();
             long SubDay=(date1.getTime()-date2.getTime())/(24*60*60*1000);
            if(SubDay<0)
            SubDay=(date2.getTime()-date1.getTime())/(24*60*60*1000);
            System.out.println(" 两个日期之间相差"+SubDay+" 天 ");
        }
    }
